if (label)
{
- GVariantBuilder *builder;
+ g_autoptr(GVariantBuilder) builder = NULL;
/* ret_xattrs may be NULL */
builder = ot_util_variant_builder_from_variant (ret_xattrs,
{
const char *name = glnx_basename (fullpath);
g_auto(GVariantBuilder) xattrs_builder;
+ g_autoptr(GVariant) xattrs = NULL;
/* is this the root directory itself? transform into empty string */
if (name[0] == '/' && name[1] == '\0')
DEFAULT_DIRMODE, cancellable, error))
return FALSE;
+ xattrs = g_variant_ref_sink (g_variant_builder_end (&xattrs_builder));
return mtree_ensure_dir_with_meta (ctx->repo, parent, name, file_info,
- g_variant_builder_end (&xattrs_builder),
+ xattrs,
FALSE /* error_if_exist */, out_dir,
cancellable, error);
}
GError **error)
{
GVariantBuilder builder;
+ g_autoptr(GVariant) options = NULL;
+
g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}"));
if (dir_to_pull)
g_variant_builder_add (&builder, "{s@v}", "refs",
g_variant_new_variant (g_variant_new_strv ((const char *const*) refs_to_fetch, -1)));
- return ostree_repo_pull_with_options (self, remote_name, g_variant_builder_end (&builder),
+ options = g_variant_ref_sink (g_variant_builder_end (&builder));
+ return ostree_repo_pull_with_options (self, remote_name, options,
progress, cancellable, error);
}
guint min_fallback_size;
guint max_bsdiff_size;
guint max_chunk_size;
- GVariantBuilder metadata_builder;
+ g_auto(GVariantBuilder) metadata_builder = {0,};
DeltaOpts delta_opts = DELTAOPT_FLAG_NONE;
guint64 total_compressed_size = 0;
guint64 total_uncompressed_size = 0;
g_autoptr(GVariant) delta_part_content = NULL;
g_autoptr(GVariant) delta_part = NULL;
g_autoptr(GVariant) delta_part_header = NULL;
- GVariantBuilder *mode_builder = g_variant_builder_new (G_VARIANT_TYPE ("a(uuu)"));
- GVariantBuilder *xattr_builder = g_variant_builder_new (G_VARIANT_TYPE ("aa(ayay)"));
+ g_auto(GVariantBuilder) mode_builder = {0,};
+ g_auto(GVariantBuilder) xattr_builder = {0,};
guint8 compression_type_char;
+ g_variant_builder_init (&mode_builder, G_VARIANT_TYPE ("a(uuu)"));
+ g_variant_builder_init (&xattr_builder, G_VARIANT_TYPE ("aa(ayay)"));
{ guint j;
for (j = 0; j < part_builder->modes->len; j++)
- g_variant_builder_add_value (mode_builder, part_builder->modes->pdata[j]);
+ g_variant_builder_add_value (&mode_builder, part_builder->modes->pdata[j]);
for (j = 0; j < part_builder->xattrs->len; j++)
- g_variant_builder_add_value (xattr_builder, part_builder->xattrs->pdata[j]);
+ g_variant_builder_add_value (&xattr_builder, part_builder->xattrs->pdata[j]);
}
payload_b = g_string_free_to_bytes (part_builder->payload);
part_builder->operations = NULL;
/* FIXME - avoid duplicating memory here */
delta_part_content = g_variant_new ("(a(uuu)aa(ayay)@ay@ay)",
- mode_builder, xattr_builder,
+ &mode_builder, &xattr_builder,
ot_gvariant_new_ay_bytes (payload_b),
ot_gvariant_new_ay_bytes (operations_b));
g_variant_ref_sink (delta_part_content);
if (tombstone_commits)
{
- g_autoptr(GVariantBuilder) builder = NULL;
- builder = g_variant_builder_new (G_VARIANT_TYPE ("a{sv}"));
- g_variant_builder_add (builder, "{sv}", "commit", g_variant_new_bytestring (sha256));
+ g_auto(GVariantBuilder) builder = {0,};
+ g_autoptr(GVariant) variant = NULL;
+
+ g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}"));
+ g_variant_builder_add (&builder, "{sv}", "commit", g_variant_new_bytestring (sha256));
+ variant = g_variant_ref_sink (g_variant_builder_end (&builder));
if (!ostree_repo_write_metadata_trusted (self,
OSTREE_OBJECT_TYPE_TOMBSTONE_COMMIT,
sha256,
- g_variant_builder_end (builder),
+ variant,
cancellable,
error))
goto out;
gboolean ret = FALSE;
g_autoptr(GVariant) metadata = NULL;
g_autoptr(GVariant) new_metadata = NULL;
- g_autoptr(GVariantBuilder) builder = NULL;
if (!ostree_repo_read_commit_detached_metadata (self,
commit_checksum,
g_autoptr(GVariant) summary = NULL;
GList *ordered_keys = NULL;
GList *iter = NULL;
- GVariantDict additional_metadata_builder;
+ g_auto(GVariantDict) additional_metadata_builder = {0,};
if (!ostree_repo_list_refs (self, NULL, &refs, cancellable, error))
goto out;
{
guint i;
g_autoptr(GPtrArray) delta_names = NULL;
- GVariantDict deltas_builder;
+ g_auto(GVariantDict) deltas_builder = {0,};
g_autoptr(GVariant) deltas = NULL;
if (!ostree_repo_list_static_delta_names (self, &delta_names, cancellable, error))